/******************************************************************
编程环境：----------
        软件:Arduino2.3.4
        硬件:Mega2560主控板,Mega2560扩展版,
            方口USB数据线*1, Windows11操作系统电脑, 杜邦线若干
        库函数:<Arduino.h>, <Wire.h>
              <Adafruit_MPU6050.h>, <Adafruit_Sensor.h>

实验目的：-----------
        学会使用陀螺仪模块，读取陀螺仪加速度轴数据及角速度轴原始数据.

操作流程：----------
        详细请看操作视频.

实验现象：-----------
        _________________________________________________________________________
        程序烧录后，打开串口监视器，波特率选择115200，尝试手动旋转陀螺仪模块，能看到如下输出
        AccelX:1.27,AccelY:1.47,AccelZ:10.71, GyroX:-0.05,GyroY:0.02,GyroZ:-0.01
        AccelX:1.31,AccelY:1.47,AccelZ:10.68, GyroX:-0.05,GyroY:0.02,GyroZ:-0.01
        AccelX:1.40,AccelY:1.51,AccelZ:10.68, GyroX:-0.05,GyroY:0.02,GyroZ:-0.01
        AccelX:1.36,AccelY:1.51,AccelZ:10.71, GyroX:-0.05,GyroY:0.02,GyroZ:-0.01
        ......
        --------------------------------------------------------
参数解释：AccelX:1.27  表示加速度计在X轴方向上的加速度值为1.27g (其中1g等于地球表面的重力加速度)
         AccelY:1.47  表示加速度计在Y轴方向上的加速度值为1.47g (其中1g等于地球表面的重力加速度)
         AccelZ:10.71 表示加速度计在Z轴方向上的加速度值为10.71g (其中1g等于地球表面的重力加速度)
         GyroX:-0.05  表示陀螺仪在 X 轴方向上的角速度值为-0.05度/秒 (°/s)
         GyroY:0.02   表示陀螺仪在 Y 轴方向上的角速度值为0.02度/秒 (°/s)
         GyroZ:-0.01  表示陀螺仪在 Z 轴方向上的角速度值为-0.01度/秒 (°/s)

实验接线简略图：----------
    ￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣
    电池仓         mega2560扩展版          陀螺仪模块
    12V母座~~~~~~~~~板载供电口1                
                      5V --------------------5V
                      SCL--------------------SDA
                      SDA--------------------SCL
                      GND--------------------GND
    ￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣￣
2024.12.19 Uni Tongchuang Intelligent Robot Technology CO.,Ltd
*******************************************************************/
#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>
#include <Wire.h>
Adafruit_MPU6050 mpu;

void setup() {
  delay(1500);
  Serial.begin(115200);
  //如果不知道iic设备地址，可以调用下面的函数查询到iic设备地址
  //search_for_iic_address();
  gyroscope_init(); //初始化MPU6050
}

void loop() {
  //读取原始加速度计和陀螺仪值
  get_gyroscope();
}
